import {createRouter, createWebHashHistory, createWebHistory} from "vue-router";
import NProgress from 'nprogress'; // progress bar
import 'nprogress/nprogress.css'; // progress bar style
import routes from "./routes";
import {useAuthStore} from "@/stores/auth.js"; // 你的本地存储工具
NProgress.configure({ showSpinner: false }); // NProgress Configuration


const router = createRouter({
    history: createWebHashHistory(import.meta.env.BASE_URL),
    routes,
    // 刷新时，滚动条位置还原
    scrollBehavior: () => ({ left: 0, top: 0 }),
});

// 每次跳转前都会执行
router.beforeEach((to, from, next) => {
    const authStore = useAuthStore()

    // 判断是否需要登录
    if (to.meta.requiresAuth) {
        // 如果没有 token
        if (!authStore.token) {
            next({ path: '/login' }) // 跳转到登录页
        } else {
            next() // 有 token，放行
        }
    } else {
        next() // 不需要登录的页面，放行
    }


})



export default router
